Setting up the Parallel Read

This chapter describes how to set up parallel read processing for big tables. You can set the parallel read for read tasks, for delta read tasks and for preselection tasks related to standard (i.e. not ABAP-based) derivation paths. The reason for read task parallelization is to split a table with too many records into smaller data sets, called DTS partitions, to process them in parallel. For example, if 10 DTS partitions are created for one table, the data selection can be executed in 10 parallel background processes and should be processed 10 times faster.

NOTE Manual selection of fields without a database index might lead to worse performance. In the worst-case scenario, it can lead to a full table scan for each partition, which results in an execution that takes 10 times longer.

Proceed as follows to set up the parallelization:

  1. To automatically set up read task parallelization, execute the step Analyze technical settings of tables.
    1. Select the option Enable parallel read in the section Automatic parallel read setup.

    2. Enter the table size and package size. The package size defines number of partitions.

NOTE

You can define an individual table parallelization in the step Maintain technical settings by clicking the button in the Parallel read column. Similarly, you can define the delta read tasks by clicking the button in the Shadow partitioning column. The number of partitions is not defined by the package size in kB, but either by a fixed number (Number of partitions) or calculated by the number of rows (Rows per partitions). The shadow partitioning must be set separately for each table, if needed.

To set up preselection task parallelization, execute the step Maintain DTS objects, open the Path Grid view by clicking the button in the ALV tree toolbar, find the chosen derivation path, and click the button in the Parallel derivation column.

  1. After the parallelization is set up, the entire parallelization needs to be built. For this purpose, the parallelization tasks must be scheduled and executed. These steps differ based on the tasks that are parallelized:

  2. Optional: Build the parallelization based on the preselection results.

      1. Execute the preselection. For more information, see the step Execute and monitor preselection.

      2. Select the option Use preselection.

    1. NOTE The last portion will be set to be open-ended to ensure that new data is covered during the downtime execution.
      WARNING The preselection will need to be executed in the downtime again.
  3. Build the parallel portions in the background by executing either the step Execute parallel read builder or Execute parallel derivation builder.